
package com.ce.pms.charge.service;

import java.util.List;

import com.ce.pms.charge.vo.ChargeRecordVO;
/**
 *
 * 	名称: com.ce.pms.charge.service.INonConventionalChargeService <br>
 *  非常规费用业务接口
 *
 * @author  付湘辉(开发) ，马思权(设计)  <br>
 * Created on： 2008-12-24 <br>
 * @author <br>
 * update on： <br>
 * why: <br>
 */
public interface INonConventionalChargeService extends IAbstractChargeRecordService {

	/**
    * 功能描述:根据房间ID获得没处理的费用记录  <br>
    * 根据房间ID获得没处理的费用记录
    * @param houseId - 房屋ID
    * @return List
    * @roseuid 4945E90C0213
    *
    * Create author:付湘辉 <br>
    * Create on:2008-12-24  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */
   public List<ChargeRecordVO> getUnHandleChargeRecords(Long houseId);

   /**
    * 功能描述: 删除费用记录 <br>
    * @param chargeRecordId - 费用记录Id
    * @roseuid 4945FAE90399
    * @return Boolean
    *
    * Create author:付湘辉 <br>
    * Create on:2008-12-24  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */
   public Boolean deleteChargeRecord(Long chargeRecordId);

   /* *
	 * 功能描述: 检查某项费用的所有未入账费用记录是否都已经处理 <br>
	 * @param bizModule 业务模块
	 * @param bizType 业务类型
	 * @param bizId 业务ID
	 * @return
	 *
	 * Create author:付湘辉 <br>
	 * Create on:2009-1-7  <br>
	 * Edit author:  <br>
	 * Edit on:    <br>
	 * Why:     <br>
	 */
	public  Boolean  checkFinishHandleYn (String bizModule, String bizType, List<Long> bizIds);

	  /**
	   * 功能描述: 新增一笔费用记录 <br>
	    * @param chargeRecord
	    * @return com.ce.pms.renovation.vo.ChargeRecordVO
	    * @roseuid 4945F9FD0261
	   *
	   * Create author:付湘辉 <br>
	   * Create on:2008-12-24  <br>
	   * Edit author:  <br>
	   * Edit on:    <br>
	   * Why:     <br>
	   */
	   public ChargeRecordVO addChargeRecord(ChargeRecordVO chargeRecord);

	   /**
		 * 功能描述:删除未处理的费用记录<br>
		 * @param bizModule
		 * @param bizType
		 * @param bizId<br>
		 * Create author:罗军林<br>
		 * Create on:2008-12-25<br>
		 * Edit author:<br>
		 * Edit on:<br>
		 * Why:<br>
		 */
		public Boolean deleteChargeRecordByBiz(String bizModule,String bizType,Long bizId);

		/**
		 * 功能描述: 查询指定业务模块，类型，ID的费用记录 <br>
		 * @param bizModule
		 * @param bizType
		 * @param bizId
		 * @return
		 *
		 * Create author:付湘辉 <br>
		 * Create on:2009-1-5  <br>
		 * Edit author:  <br>
		 * Edit on:    <br>
		 * Why:     <br>
		 */
		public ChargeRecordVO getChargeRecordByBiz(String bizModule,String bizType,Long bizId);

		/**
		 * 功能描述: 检查某项费用的所有未入账费用记录是否都未处理 <br>
		 * 只要有一项已经处理，都将返回false
		 * @param bizModule
		 * @param bizType
		 * @param bizIds
		 * @return<br>
		 * Create author:罗军林<br>
		 * Create on:2009-1-8<br>
		 * Edit author:<br>
		 * Edit on:<br>
		 * Why:<br>
		 */
		public Boolean checkFinishIsHandle(String bizModule, String bizType, List<Long> bizIds);
}
